Chapter 1: An Introduction to 3D Art

By Roland Hess

If you are completely unversed in 3D art, then this introduction is for you. If you already know what you're doing and are just using this book to get yourself up to speed with Blender, then skip right on to Chapter 2, The Blender Interface. (Of course, if you did that you would miss out on a fantastic analogy for 3D art that might give you inspiration some day when your mouse just doesn't want to do its thing and all you can think of are chrome spheres and checkerboard planes.) Please note that the screen shots and references to Blender in this chapter are not tutorials - they are simply general examples of what can be done. You won't find step-by-step instructions on how to recreate them. We'll get to all that later.

Taking Pictures of Tiny Little Houses

3D Art is little more than building a model and taking a picture of it.

Figure 1.1: A street scene created with miniatures and raw materials.

Did you ever build a little setup with toy houses, put miniature figures in it, maybe snap off twigs and bits of bushes and stick them in clay to look like little shrubs? Did you take a picture of it, close enough to the ground to try to make it look like the town was real? Did you spend countless hours in your room as a kid trying to make the whole thing as realistic as possible, while all the other kids taunted you and called you the "Hermit King?" 

Okay, maybe that was just me.

But that, minus the taunting, is the essence of 3D art. Creating and taking pictures of models. Admittedly, 3D Art is a much deeper topic than that, but that is where we'll start.

Raw Materials

If you were going to build a diorama of a downtown street, what would you need? Boxes, for the buildings. A knife or scissors to cut windows and doors, or maybe just a marker to draw them on, depending on how fancy you want to get. Colored paper and odd bits of cardboard to make things like the road, the sidewalks and curbs, the trash bins and benches. Maybe if you were feeling lazy, you'd just buy a couple of miniature benches and street signs from a hobby shop. If you were feeling especially clever, you might make a mixture of glue and colored sand to simulate roofing material. You'd need a couple of clippings from live plants to stick around as trees and bushes.

Figure 1.2: Some of the raw materials you would use to build a diorama. 

If you had all of that, you could build yourself a nice little street scene.

When it was built, and it looked the way you wanted, you could set a digital camera on the ground, frame up the picture in the viewfinder and snap away. You could move the camera to get shots from different angles. If you really wanted to, and you had built things properly, you  could have some action figures taped to sticks running around the place while one of your friends recorded it with her nice digital video camera.

Working in computer generated 3D art is almost exactly like this, except that you don't risk slicing the end off your finger with an artist's knife.

First, you build your model. Then, you paint it. Then you arrange all your models where you want them and start snapping pictures.

Building Models

In 3D art (commonly referred to as CG - Computer Graphics, CGI - CG Imaging, or simply 3D) almost all models are built from triangles. It may not seem so at first, because many modeling tools let you work with quadrangles, curves, bevels, mathematical surfaces and a bunch of other stuff I'm not even going to mention. But in the end, it's all triangles. Why, you might wonder? Remember all the times that you've smacked your computer and said "stupid machine"? Well, you were right.

Figure 1.3: This is a triangle.

Computers are stupid. Way down in their guts, all they understand are triangles, so that's what you're stuck with. Fortunately, computers are really good at calculating and drawing triangles, and there are a lot of very smart people out there (like the people who wrote and maintain Blender) who know how to build tools that make it so easy for you to work with triangles that you often don't even realize that's what you're doing.

And so, from triangles, you will see that you can build a quadrangle.
Figure 1.4: These are quadrangles.

With triangles and quadrangles (quads, for short), you can build anything you like. A box for a diorama street scene. A monkey. Something beautiful.

Figure 1.5.1: A simple 3D model, showing its triangle construction on the right.
Figure 1.5.2: A monkey head (Suzanne, Blender's mascot), showing triangles. 
Figure 1.5.3: Detail of "Miracle" by Robert J. Tiess

The tools that have been developed to help you work with triangles let you move their corners, their edges or the whole thing at once. They let you duplicate them, smooth the angles between them, split them apart and weld them together. They let you push them around like clay, order them in rows or rotate them in space around an arbitrary axis.

Let's take a look at some of the shortcuts and tools that are available to you  when building 3D models. (The following is not a tutorial, so we don't recommend trying to do this yet. It's just a sample of the kinds of things you can do.)

Modeling Tools

In Blender, as in all 3D graphics applications, you have access to a number of different very basic models to help get you started.

Figure 1.6.1: The primitive shapes accessible through the toolbox.
Figure 1.6.2: Some of the available primitive shapes.

From this beginning, you can use the other tools to grow, shape and refine your model. If, for example, you wanted to take that cube and build a 3D plus symbol out of it, you could use one of the most popular modeling tools available: the Extrude tool.

Figure 1.7.1: A standard cube, with the top face selected.
Figure 1.7.2: The top face, extruded upward. 
Figure 1.7.3: Two of the sides and the bottom face selected. 
Figure 1.7.4: Those faces extruded, to form a plus (+) symbol. 

Now, you might want to change the shape of the plus symbol, making each arm grow in the middle. To do something like this, you would use another popular tool: the Loop Cut tool.

Figure 1.8.1: Loop Cut tool in use on the top arm. 
Figure 1.8.2: Loop Cut made around the center of each arm. 
Figure 1.8.3: End and center faces scaled down to make a nice new shape. 

In the last illustration, you shrunk (scaled down) the quads on the ends of the plus, and the ones that made up the center, giving you a nice new shape. Now, you might think the edges are too sharp, so you use a combination of the bevel tool and the smooth tool until your model looks like this:

Figure 1.9: A beveled, smoothed plus symbol. 

Okay, you might be thinking, I only see a few triangles there.

Figure 1.10: The plus symbol with triangles made visible.

Ah. There they are.

Blender, like most 3D packages, offers you dozens of modeling tools that you can combine in an almost infinite variety to produce any kind of model you can imagine. Try doing that with a cardboard box.


Materials

Let's go back to your little cardboard box model of the street. If you just stick a bunch of plain boxes in a row, it's not going to give a very good illusion of a street. To make it better, you need to make the boxes look more realistic. Let's say that you want the Post Office to look like it's made of brick. You have some options: 1. draw bricks directly on the box with markers or paints; 2. find a picture of a brick wall, cut it out and glue it to the box; 3. make an actual brick-like surface out of glue and red sand, apply it to the box, and painstakingly carve the mortar lines into it.

Of course, to do a good job, you'd have to finish the rest of the box. Paint trim around the door and window holes. Maybe cut and fasten rectangles of clear plastic to make windows. Come up with something neat for the shingles. For a nice little detail, you can draw a little sign on the door that displays the office hours.

So, how does this translate to 3D? In 3D, you define and apply different materials to your models, just like you would for your diorama.

In Computer Graphics, you can get your materials in a variety of ways. First, you must tell the computer what kind of properties you want your material to have: should it be shiny or dull? Rough or smooth? How should it react to light hitting it from different angles?

All of these questions are answered by using different Shaders. In Blender, you can choose from a variety of shading models, each suited to slightly different tasks.

Figure 1.11.1: Ball with Lambert shading. Basic shading model.
Figure 1.11.2: Ball with Oren-Nayer shading. Good for rough surfaces.
Figure 1.11.3: Ball with Minnaert shading. Good for velvets and cloths.
Figure 1.11.4: Ball with Toon shading. Simulates cartoon-style coloring.

Once you've chosen the basic properties for your material, you move on to defining things like colors. If you just want the whole thing to be a uniform color, it's pretty simple. If you want to get more complex, though, say, to make your material look like bricks for example, you need to add Textures. And just like texturing a diorama, there a number of ways you can obtain digital textures.

You could use a digital photograph of a brick wall. You could use Blender's texture generation tools to make a simulation of brick. You could use Blender's 3D painting tools to paint bricks directly onto the surface.

Figure 1.12.1: Rendered wall using photo texture map. 
Figure 1.12.2: Rendered wall using procedural brick texture. 
Figure 1.12.3: Rendered wall that has been painted on directly. 

Of course, there are a few more things to worry about than just that. You have to tell Blender how to orient the texture on the model, so things look right.

Figure 1.13.1: A bad angle and scale for this texture. 

There are other properties and things that you can do with materials, such as defining transparency, reflection and bumpiness. You can even use the texturing tools to affect settings other than color: your brick texture could be used to define brick-shaped areas of greater or lesser transparency, different levels of shininess or bumps.

Figure 1.14.1: Transparency map
Figure 1.14.2: Specularity map
Figure 1.14.3: Bump map

Thus far, you've made your models and told Blender how you want them to look by defining and applying materials. There's one more thing you need to do before you start taking pictures.

Lighting

You've no doubt seen model railroad displays of varying quality, often at a science center, a museum, or in your weird uncle's basement. One of the things that makes a model set come to life is proper lighting. There is a model railroad display in the Carnegie Science Center in Pittsburgh, Pennsylvania that covers over four hundred square feet. The lighting of the miniatures is impressive as each street lamp, railroad crossing, street intersection and building is lit with painstaking detail. Hidden lamps help to make different sections appear to have different seasons. Other lamps and miniature interior lights cycle to simulate day and night.

Lighting can make or break a scene. Great lighting can make the most simply built and textured model look like a real physical object, despite its other deficiencies. Bad lighting can lay waste to hours of careful modeling and texturing work.

Figure 1.15.1: A very simple box model with no textures, lit well and rendered to be fairly realistic. 
Figure 1.15.2: The same model rendered with a non-shadow point light source.

Blender, like most other CG applications, gives you many options for lighting your models, allowing you to create setups that mimic natural conditions (Sun and Hemi lamps, with something called Ambient Occlusion) and studio settings (Spot and Area lamps), and from there to create lighting schemes that would never be possible in the real world, but that can, as you'll see, help to give drama and depth to your scenes. Lights can be set to different colors and intensities, can be set to cast shadows or not, and can even be set to only affect certain objects, leaving others alone.

Snap Away!

So now, you've created your models and textured them. You've decided how to light everything. It's time to start taking pictures.

In the world of 3D graphics, this is called Rendering. Usually, you create a camera object, aim it and adjust it like you would a real camera, then tell the 3D application to render the image that the camera sees. This is where everything we've talked about up until now comes together.

When you tell Blender to render an image, the first thing it does is to break up your models into triangles. Don't worry - you won't see the triangles. However, recall that triangles are (mostly) the only way the computer understands geometry, so triangles it is! Once Blender has made its own internal model of everything based on triangles, it does some calculations to determine how to cast shadows from different light sources and a few other things.

Then, it starts to generate the image.

Digital images, whether computer-generated, scanned, or captured with a digital camera, are made up of a grid of Pixels.

Figure 1.16: Digital images are made of pixels, which can be seen when zoomed in.

Just to give you an idea of pixel sizes, the computer monitor you're using right now most likely has a dimension of around 1024 x 728 pixels (almost 750,000 pixels!). U.S standard television broadcasts at 648 x 486 pixels, while the European standard is 720 x 486. A 3 Megapixel digital camera will take shots in the range of 2000 x 1500 pixels. A nice glossy magazine cover image will be around 2700 x 3600 pixels.

When you first run Blender, it defaults to rendering images at 800 x 600 pixels.

For each of those pixels, your 3D application decides which triangle from your models is the closest to the camera, which lights affect that particular point on the triangle and how much, and what color it should be, based on the chosen shaders and texturing options from the Materials. Once it has all of that figured out, it stores that result in the image. When it has calculated a result for every single pixel, your image is done. Rendered.

If you're new, you get something like this:

Figure 1.17: A first attempt at using Blender. 

If you are a Living Legend of CGI, you get something like this:

Figure 1.18: Still from the HD version of Elephants Dream. 

And now you have a pretty (or not) picture of your model. That's great, but what good is it? Well, for many uses, architectural visualization, making fake product shots for marketing campaigns, doing artwork for personal enjoyment, it is enough. A nice still image is the end.

But, for many others, this is not the end of the process. You might need things to move. It could be as simple as moving the camera around your model to show off your hard work. If you wanted to really show off, you might make the models of trees appear to sway gently in the wind and have the striped pole on the barbershop spin slowly. Then, a car speeds down the road. Chased by a huge boulder. Chased by a giant, three-headed robot.

That's animation.

Animation

In CG, there are basically three ways to create motion.

The first is to tell certain objects (like a car) where to be, and at what time. Essentially, you say:

"Car, I would like you be at this side of the street when I start rolling the camera, and over at the other end of the street three seconds later. Can you handle that?"

And the car says: "Dude, I'm not real! I'm not even constrained by the laws of physics. I can do anything you want!"

And you say "Awesome!" because it really is.

Animating by telling things where to be and when to be there is called Keyframing.

Each rendered image that makes up part of an animation is called a Frame.

And so, to animate with this method, you go to a Frame (that's the "when") and set a Key (that's the "where") for the location of the object. To make the Car example a little more technical, you would go to Frame 1 in your 3D application (the start of the animation), use the application's tools to put the car at the beginning of the street, and set a Key. Then, you would move the application's time counter three seconds ahead in time, move the car to the end of the street, and set another Key.

Rendering all of the images that represent those three seconds of time, then playing them back in sequence, will show the car moving from the beginning of the street to the end.

The second division of animation, Character Animation, is really just keyframe animation - the same basic procedure of telling "where" and "when" is used - but as it requires a different set of skills, it is usually thought of separately. 

What kinds of different skills? Well, the method of animation we just discussed is good for moving objects around that don't change shape. It's pretty straightforward: the object starts here, goes somewhere else, and ends up over there. Maybe it topples over onto its side. That is considered "object level" animation, and more or less, anyone with half of pint of imagination and visualization skills can pull it off.

Character animation is different. Some people might think that character animation is most akin to the clay and model based stop-motion animation popularized in a glut of Christmas specials and sometimes bad/sometimes brilliant motion picture and television features. Not so.

Character animation is a combination of technical skill, imagination, acting ability and puppetry. Yes. Puppets. There is a reason that a certain high-profile animation studio's in-house character package is called "Marionette". A well set up system of controls for character animation will react more like a complex puppet than anything else.

In Blender, the structure that controls character animation is called an Armature. Armatures can resemble skeletons:

Figure 1.19: An armature skeleton appropriate for character animation. 

Or something a bit more esoteric:

Figure 1.20: The "Ludwig" rig by Jason Pierce. 

The odd shapes floating over the head are the face controls, which act exactly like the controls on the large-scale multi-operator puppets used for motion picture and television special effects.

But those skeletons and additional controls still function under the same principle as object-level keyframe animation. Place the Arm bones where and when you want them and set a Key. Move the eyebrow controllers to make a goofy face at the right frame and set a Key. Play the whole thing back and each bone and controller will hit their spots at the times you told them to, making a (hopefully) brilliant character animation.

The clever armature and controls move the (equally brilliant) model you've already built of a person, causing it to not only move from place to place, but to change shape as it does so. This change in shape is called Deformation.

Figure 1.21.1: A rig in rest position with a character mesh around it. 
Figure 1.21.2: When the rig is posed, the mesh follows. 

None of this is limited to human beings, though. You could make an armature that was just a chain of four bones, attach it to a model of a soda can, and keyframe the armature so that the soda can wriggles around on the ground like worm. Or hops about like a kid jazzing on four bars of high-test chocolate.

The third method of animation is called Simulation or Procedural Animation. Those are just different ways to say "the computer figures it out for you." All natural processes, like a block wall collapsing on itself or the motion of poured water splashing into a glass, are governed by the laws of physics and can, with a greater or lesser degree of success, be simulated by a computer program. Often, as in the case of water splashing into a glass, a computer can do a much better job of animation than a human being can, because it can actually simulate the physics of the situation. The same applies to a falling wall of blocks or a flag flapping in the wind.

Since these are physical simulations, you have to tell your CG application the basics about what you're simulating, which usually include values for gravity, elasticity, mass, wind, etc.

Figure 1.22.1: Rigid Body Physics: A block wall in mid-tumble. 
Figure 1.22.2: Fluid Simulation: Water pouring into a glass. 
Figure 1.22.3: Soft Body Physics: A flag in the wind. 

In addition to built-in simulations like these, (Blender has rigid body physics - think bowling balls falling down stairs; soft bodies - think an overweight stomach jiggling when slapped; and fluid simulation built right in) many 3D applications, including Blender, allow you to write little programs (usually called Scripts) that can control and generate animation. These can be as simple as a script that makes objects follow the contours of the ground, or as complex as full applications that can produce and animate large-scale battle scenes.

Figure 1.23.1: Objects littered around a terrain by a script. 
Figure 1.23.2: A large-scale combat simulation. 

Sidebar on Art: Let's Talk About Art. 

Don't expect Blender, or any other 3D application for that matter, to substitute for a lack of artistic knowledge and skill. 3D applications are tools, and nothing more. In the hands of a skilled artist, they can produce moving pieces of art. In the hands of a hack, they will produce junk.

Even if you have no artistic background though, all is not lost. There are some basic rules for creating artwork that can be gleaned from a simple web search or a trip to your local library. In my experience, 3D art is an interesting combination of photography and illustration. From photography, you take the techniques of lighting and composition. From illustration (painting, drawing, etc.), you take all of the artistic decisions of working in a non-realistic medium. In other words, at some point you have to decide what portions of reality you will try to reproduce, and what portions you will omit or only suggest.

For a better example of what I am talking about, use as a reference any of the 3D animated feature films produced in the last five years. None of them could be said to be completely photorealistic. In other words, reality does not look like those films. And yet, as we watch them, we are drawn into their shorthand for reality, and our minds fill in the blanks.

It turns out that your toughest job as a 3D artist is exactly that: decide which portions of reality you will omit or imply, and which portions you will recreate. The rest is mechanics.

End sidebar.

Conclusion

In this mental exercise, you've made models of buildings, lampposts and a street. You've created and applied appropriate materials to everything. Lights are strategically placed to give a realistic feeling of being outside on a sunny day. Cars, boulders and robots are zooming down the street. Now they're smashing into the wall of the post office, whose bricks tumble realistically to the pavement below, coming to rest beside a little burbling fountain.

We set the frame counter to 1 and place the camera.

Now, all we have to do is press the Render button.

It's that easy.

Really.

Well, okay. It isn't.

But now that you've had your introduction, let's start learning how to actually do this.

BLENDER OPEN CONTENT LICENSE 

 Terms and Conditions for Copying, Distributing, and Modifying 

 Items other than copying, distributing, and modifying the  Content with which this license was distributed (such as using,  etc.) are outside the scope of this license. 

 1. You may copy and distribute exact replicas of the OpenContent (OC) as you receive it, in any medium, provided that you conspicuously and  appropriately publish on each copy an appropriate copyright notice and  disclaimer of warranty; keep intact all the notices that refer to this  License and to the absence of any warranty; and give any other recipients of the OC a copy of this License along with the OC. You may  at your option charge a fee for the media and/or handling involved in  creating a unique copy of the OC for use offline, you may at your option offer instructional support for the OC in exchange for a fee, or you may at your option offer warranty in exchange for a fee. You may not charge a fee for the OC itself. You may not charge a fee for the sole service of  providing access to and/or use of the OC via a network (e.g. the  Internet), whether it be via the world wide web, FTP, or any other  method. 

 2. You may modify your copy or copies of the OpenContent or any portion  of it, thus forming works based on the Content, and distribute  such modifications or work under the terms of Section 1 above, provided  that you also meet all of these conditions:  

  a) You must cause the modified content to carry prominent notices stating that you changed it, the exact nature and content of the changes, and the date of any change.  

  b) You must cause any work that you distribute or publish, that in whole  or in part contains or is derived from the OC or any part thereof, to be  licensed as a whole at no charge to all third parties under the terms of this License, unless otherwise permitted under applicable Fair Use law. 

  c) The name of the Copyright Holder or contributors to the OC may not be used to endorse or promote products derived from this software without specific prior written permission.

 These requirements apply to the modified work as a whole. If  identifiable sections of that work are not derived from the OC, and can  be reasonably considered independent and separate works in themselves,  then this License, and its terms, do not apply to those sections when  you distribute them as separate works. But when you distribute the same  sections as part of a whole which is a work based on the OC, the  distribution of the whole must be on the terms of this License, whose  permissions for other licensees extend to the entire whole, and thus to  each and every part regardless of who wrote it. Exceptions are made to this requirement to release modified works free of charge under this  license only in compliance with Fair Use law where applicable. 

 3. You are not required to accept this License, since you have not  signed it. However, nothing else grants you permission to copy,  distribute or modify the OC. These actions are prohibited by law if you  do not accept this License. Therefore, by distributing or translating  the OC, or by deriving works herefrom, you indicate your acceptance of  this License to do so, and all its terms and conditions for copying,  distributing or translating the OC.  

 NO WARRANTY 

 4. BECAUSE THE OPENCONTENT (OC) IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE OC, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE OC "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK OF USE OF THE OC IS WITH YOU. SHOULD THE OC PROVE FAULTY, INACCURATE, OR OTHERWISE UNACCEPTABLE  YOU ASSUME THE COST OF ALL NECESSARY REPAIR OR CORRECTION.  

 5. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING  WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MIRROR AND/OR REDISTRIBUTE THE OC AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE OC, EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 

